const https = require('https'); //node内置的库
const cheerio = require('cheerio') //第三方库，要安装
const url = 'https://book.douban.com/subject/35417011/?icn=index-latestbook-subject'

// const { resolve } = require('path/posix'); 
// https //访问代理
// //  get方法 明文访问
//     .get('https://book.douban.com/subject/35291248/', function(res) {
//     // console.log(res, '+++++++++');
//     // 页面有点大，以数据包的形式一段一段返回
//     // 当有数据包到达的时候
//     // chunk就是一个数据包
//     let html = ''
//     res.on('data', function(chunk) {
//         console.log(chunk);
//         html += chunk;
//     })
//     res.on('end', function() {
//         console.log(html);
//     })
// })
const httpPromise = new Promise((resolve, reject) => {
    try {
        let html = ''
        https
            .get(url, (res) => {
                res.on('data', (chunk) => {
                    html += chunk;
                })
                res.on('end', () => {
                    resolve(html);
                })
            })
    } catch (e) {
        reject(e)
    }
})

// httpPromise
//     .then(res => {
//         console.log(res);
//     })
//     .catch(err => {
//         console.log(err);
//     })


// 单点入口
const main = async() => {
    let html = await httpPromise
        // console.log(html);
        // html字符串 内存中做成了一个浏览器
    const $ = cheerio.load(html);
    const title = $('#wrapper h1 span').text(); //选择网页中的该元素
    const outhor = $('#info span a').text();
    const pubCompany = $('#info .pl').text();
    console.log(title, outhor, pubCompany);
}
main();